Customized call setup procedure based on predicted call quality

ABSTRACT

A system and method for customizing call setup based on predicted call quality is disclosed. When a radio access network (RAN) device receives a request to set up a call between an originating wireless communication device (WCD) and a terminating WCD, the RAN device can predict that the call will use particular coding technique. The prediction can be made prior to alerting either of the originating or terminating WCDs of the new call, and can be based on a historical call record of calls originated by the originating WCD and/or terminated by the terminating WCD. The RAN device can then alert at least one of the originating WCD or the terminating WCD of the call with an alerting signal that indicates the particular coding technique will be used for the call.

BACKGROUND

In a typical cellular radio communication system (wireless communication system), an area is divided geographically into a number of cell sites, each defined by a radio frequency (RF) radiation pattern from a respective antenna or antenna system. The antennas in the cells are in turn coupled to one or another form of controller, which is then coupled to a telecommunications switch or gateway, such as a mobile switching center (MSC) and/or a packet data serving node (PDSN) for instance. These (and possibly other) elements function collectively to form a Radio Access Network (RAN) of the wireless communication system. The switch or gateway may then be coupled with a transport network, such as the PSTN or a packet-switched network (e.g., the Internet).

Depending on the specific underlying technologies and architecture of a given wireless communication system, the RAN elements may take different forms. In a code division multiple access (CDMA) system configured to operate according IS-2000 and IS-856 standards, for example, the antenna system is referred to as a base transceiver system (BTS), and is usually under the control of a base station controller (BSC). In a universal mobile telecommunications system (UMTS) configured to operate according to ITU IMT-2000 standards, the antenna system is usually referred to as a NodeB, and is usually under the control of a radio network controller (RNC). In a UMTS network configured to operate to Long Term Evolution (LTE) standards, evolved NodeBs (eNodeBs) may communicate directly with one another, while under functional coordination of a mobility management entity (MME). Other architectures and operational configurations of a RAN are possible as well.

A subscriber (or user) in a service provider's wireless communication system accesses the system for communication services via a Wireless Communication Device (“WCD”), such as a cellular telephone, “smart” phone, pager, or appropriately equipped portable computer, for instance. In a CDMA system a WCD is referred to as an access terminal (“AT”); in a UMTS system (including LTE) a WCD is referred to as User Equipment (“UE”). For purposes of the discussion herein, the term WCD will generally be used to refer to either an AT or UE or the like. When a WCD is positioned in a cell, it communicates via an RF air interface with the BTS, NodeB, or eNodeB antenna of the cell. Consequently, a communication path or “channel” is established between the WCD and the transport network, via the air interface, the BTS, NodeB or eNodeB, the BSC or RNC, and the switch or gateway.

As the demand for wireless communications has grown, the volume of call traffic in most cell sites has correspondingly increased. To help manage the call traffic, most cells in a wireless network are usually further divided geographically into a number of sectors, each defined respectively by radiation patterns from directional antenna components of the respective BTS, NodeB or eNodeB, or by respective antennas. These sectors can be referred to as “physical sectors,” since they are physical areas of a cell site. Therefore, at any given instant, a WCD in a wireless network will typically be positioned in a given physical sector and will be able to communicate with the transport network via the BTS, NodeB or eNodeB serving that physical sector.

The functional combination of a BTS of a cell or sector with a BSC, or of a NodeB and an RNC, or an eNodeB is commonly referred to as a “base station.” The actual physical of a configuration of a base station can range from an integrated BTS-BSC or NodeB-RNC unit to a distributed deployment of multiple BTSs under a single BSC, multiple NodeBs under a single RNC, or just an eNodeB. Regardless of whether it is configured to support one cell, multiple cells, or multiple sectors, a base station is typically deployed to provide coverage over a geographical area on a scale of a few to several square miles and for tens to hundreds to several thousands (or more) of subscribers at any one time.

A subscriber may move between neighboring coverage areas of base stations. More specifically, as a subscriber at a WCD moves between wireless coverage areas of a wireless communication system, such as between cells or sectors, or when network conditions change or for other reasons, the WCD may “hand off” or “handover” from operating in one coverage area to operating in another coverage area. In a usual case, this handoff process is triggered by the WCD monitoring the signal strength of various nearby available coverage areas, and the BSC or RNC (or other controlling network entity) determining when one or more threshold criteria are met. For instance, a WCD may continuously monitor signal strength from various available sectors and notify a BSC when a given sector has a signal strength that is sufficiently higher than the sector in which the WCD is currently operating. The BSC may then direct the WCD to hand off to that other sector. By convention, a WCD is said to handoff from a “source” cell or sector (or base station) to a “target” cell or sector (or base station).

In some wireless communication systems or markets, a wireless service provider may implement more than one type of air interface protocol. For example, a carrier may support one or another version of CDMA, such as EIA/TIA/IS-2000 Rel. 0, A, and CDMA 2000 Spread Spectrum Systems Revision E (collectively referred to generally herein as “IS-2000”) for both circuit-cellular voice and data traffic, as well as a more exclusively packet-data-oriented protocol such as EIA/TIA/IS-856 Rel. 0, A, or other version thereof (hereafter “IS-856”). Under IS-2000, packet-data communications may be referred to as 1× Radio Transmission Technology (“1×-RTT”) communications, also abbreviated as just “1×.” However, since IS-2000 supports both circuit voice and packet data communications, the term 1× (or 1×-RTT) is sometimes used to more generally refer the IS-2000 air interface, without regard to the particular type of communication carried. Packet-data communications under IS-856 are conventionally referred to as Evolution-Data Optimized (“EVDO”) communications, also abbreviated as just “DO.” A carrier could also implement an orthogonal frequency division multiple access (OFDMA) based system according to protocols specified by third generation partnership project (3GPP) LTE Advanced, for example. WCDs may be capable of communication under any or all such protocols, and may further be capable of handing off between them, in addition to being able to hand off between various configurations of coverage areas.

OVERVIEW

Communications from a base station (or other form of access node) to a WCD are carried on a “forward link” (in a CDMA system) or “downlink” (in a UMTS/LTE network) of an air interface between the WCD and base station, and communications from a WCD to the base station are carried on “reverse link” (in a CDMA system) or “uplink” (in a UMTS/LTE network) of the air interface. By way of example, the discussion herein will be made with reference to CDMA, and the terms forward link and reverse link will therefore be adopted. However, it should be understood that discussion applies as well to uplinks and downlinks.

In a CDMA system, data sent on both the forward and reverse links are assembled into units called frames, which contain data encoded for transmission to or from the access terminal (and correspondingly, from or to the base station), and are transmitted at regular intervals (corresponding to a frame rate), typically 20 milliseconds in duration (although other transmission intervals can be used). The receiving entity (e.g., access terminal on the forward link, and the wireless network—or a network device therein—on the reverse link) decodes the encoded data in received frames to recover the original data.

Encoding typically involves compression of data from an input bit rate to an output bit rate, where the output bit rate usually requires reduced transmission bandwidth (or data storage space) compared with the input bit rate. The amount of compression achieved depends on the compression scheme or algorithm applied, including whether or not any information in the input data is lost or modified in the process (e.g., rendered in some form of analytic approximation in order to accommodate reduced “volume”). The decoding process essentially reverses the encoding process, including decompressing the compressed data. Encoding techniques, represented for example in algorithmic form, can also be developed to accommodate specific types of data, such as voice or video. The fidelity of the recovered data to the original data depends, in part, on how well the compression-decompression scheme accommodates the type of data transmitted, how well the scheme compensates for lost or modified information, and the ability of the scheme to correct for degradation due to imperfect transmission (e.g., errors, noise, etc.).

The implementation of an encoding-decoding algorithm is referred to as a “codec” (for coder/decoder), and usually takes the form of a device (e.g., a digital signal processor, or the like) and/or computer-executable instructions (e.g., software, firmware, etc.). Different codecs may implement different encoding-decoding schemes, including the ability to achieve different levels of compression and/or different degrees of protection against transmission errors, and a given codec may have different modes of operation that similarly accommodate different levels of compression and/or different degrees of protection against transmission errors. For transmission of voice (or other audio data, for example), the encoding scheme used by a codec can also be a factor in the how well the data characterizes the input sound—i.e., the fidelity of the sound.

When a call is setup of between two WCDs, a codec can be selected for each WCD in a manner that matches their capabilities, as well as accounts for the WCDs' respective operating conditions. In conventional operation, the codec for a new call can be selected prior to establishing an end-to-end audio connection between two WCD, such that the selection is already in place when the called WCD (also referred to as the “terminating” WCD) is alerted of the new call and when the calling WCD (also referred to as the “originating” WCD) is correspondingly alerted that the called WCD is being notified of the call. The called WCD is alerted with a signal that causes the called WCD to playout a “ringtone.” Similarly, the calling WCD is alerted with a signal that causes the calling WCD to playout a “ringback.”

For some types of calls, a particular type of codec can be selected after call alerting at the originating and/or terminating WCDs—i.e., after ringback and/or ringtone have been (or are being) played. More specifically, an initial codec might be selected during a phase of call setup that precedes call alerting. Then, an updated codec selection might be negotiated between the originating and terminating WCDs during the alerting phase of call setup, such that by the time the call is answered at both ends, the updated codec is in place for the call. By way of example, such a procedure can be used for selection of a “high definition” (“HD”) codec for providing HD voice. There can be other types of codecs that are selected after call alerting, and in some instances, codec selection following call alerting can be the first codec selected for the call, and not necessarily an updated selection that follows an initial codec selection.

HD voice quality is generally superior to “toll quality” voice that can be provided by an initial codec selected prior to call alerting. It can therefore be beneficial to be able to alert the terminating and/or originating WCD that a new call will be an HD call. However, since the HD codec is selected after call alerting, this is not possible using conventional call setup procedures. The ability to alert the terminating and/or originating WCD that a new call will be an HD call (or more generally, that post-alerting selection of a particular type of codec has been made) would therefore be desirable. Accordingly, example embodiments described herein provide systems and methods for customized call setup based on predicted call quality.

Hence, in one respect, various embodiments of the present invention provide a method implemented by a radio access network (RAN) device of a wireless communication system, the method comprising: receiving a request to set up a call between an originating wireless communication device (WCD) and a terminating WCD, wherein for every given call set up between every given pair of WCDs served by the wireless communication system, a determination that a particular coding technique will be selected for the given call is made after alerting the given pair of the given call; prior to alerting the originating WCD and the terminating WCD of the call, predicting that the particular coding technique will be selected for the call; and alerting at least one of the originating WCD or the terminating WCD of the call with an alerting signal that indicates the particular coding technique will be used for the call.

In another respect, various embodiments of the present invention provide a radio access network (RAN) device configured for operating in a wireless communication system, the base station comprising: one or more processors; memory accessible by the one or more processors; and machine-readable instructions stored in the memory, that upon execution by the one or more processors cause the RAN device to carry out functions including: receiving a request to set up a call between an originating wireless communication device (WCD) and a terminating WCD, wherein for every given call set up between every given pair of WCDs served by the wireless communication system, a determination that a particular coding technique will be selected for the given call is made after alerting the given pair of the given call, prior to alerting the originating WCD and the terminating WCD of the call, predicting that the particular coding technique will be selected for the call, and alerting at least one of the originating WCD or the terminating WCD of the call with an alerting signal that indicates the particular coding technique will be used for the call.

In still another respect, various embodiments of the present invention provide a non-transitory computer-readable medium having instructions stored thereon that, upon execution by one or more processors of a radio access network (RAN) device, cause the RAN device to carry out functions including: receiving a request to set up a call between an originating wireless communication device (WCD) and a terminating WCD, wherein for every given call set up between every given pair of WCDs served by the wireless communication system, a determination that a particular coding technique will be selected for the given call is made after alerting the given pair of the given call; prior to alerting the originating WCD and the terminating WCD of the call, predicting that the particular coding technique will be selected for the call; and alerting at least one of the originating WCD or the terminating WCD of the call with an alerting signal that indicates the particular coding technique will be used for the call.

BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1 is a flowchart of an example method of customized call setup based on predicted call quality, in accordance with example embodiments.

FIG. 2 is a block diagram of an example wireless communication system in which customized call setup based on predicted call quality could be implemented, in accordance with example embodiments.

FIG. 3 is an alternative form of a block diagram of an example wireless communication system in which customized call setup based on predicted call quality could be implemented, in accordance with example embodiments.

FIG. 4 is an example call flow illustrating call setup customized based on predicted call quality could be implemented, in accordance with example embodiments.

FIG. 5 is illustrates example historical call records that can be used in a method for call setup customized based on predicted call quality, in accordance with example embodiments.

FIG. 6 is a simplified block diagram of a radio access network device configured for carrying out an example method of customized call setup based on predicted call quality, in accordance with example embodiments.

DETAILED DESCRIPTION

Example embodiments will be described by way of example with reference to Code Division Multiple Access (“CDMA”) communications in general, and to IS-856 and IS-2000 (including CDMA2000 1× and CDMA2000 1× Advanced) communications in particular. As described below, IS-2000 applies to both circuit-cellular and packet-data communications, and is referred to herein as “conventional” CDMA communications. For voice communications, CDMA2000 1× and/or CDMA2000 1× Advanced may specify codec support according to EVRC, including EVRC-B, EVRC-WB, and EVRC-NW. IS-856 applies more exclusively to packet-data communications (including, e.g., real-time voice and data applications), and is referred to herein as “high rate” packet-data communications. It should be understood that example embodiments can apply to other wireless voice and data protocols including, without limitation, IS-95, GSM, LTE, and LTE Advanced.

FIG. 1 is a flowchart illustrating an example method for customized call setup based on predicted call quality, in accordance example embodiments. By way of example, the method could be carried out by a RAN device configured to operate according to a CDMA family of protocols, including at least CDMA2000 1× Advanced. The RAN device could be, for example, a base station, a BTS, a BSC, or an MSC operating in a wireless communication system (or wireless communication network) that is also configured to operate according to a CDMA family of protocols.

At step 102, the RAN device receives a request to set up a call between an originating WCD and a terminating WCD. More specifically, the originating and terminating WCDs could be operating in a wireless communication system in which every given call between every given pair of WCDs served by the wireless communication system may be set up using a procedure that determines that a particular coding technique will be selected after alerting the given pair of the given call. Thus, using this procedure, if the particular coding technique is selected for the request call, the originating and/or terminating WCD would be alerted of the requested call prior to the selection being made.

At step 104, the RAN device predicts that the particular coding technique will be selected for the call prior to alerting the originating WCD and the terminating WCD of the call. That is, prior to when an actual selection of the particular coding technique would be made—and thus prior to alerting the originating WCD and the terminating WCD of the call—selection of the particular coding technique is predicted.

Finally, at step 106 the RAN device alerts the originating WCD and/or the terminating WCD of the call with an alerting signal that indicates the particular coding technique will be used for the call. More particularly, the RAN device could alert the originating WCD with an alerting signal that causes the originating WCD to play a particular call ringback associated with the particular coding technique. Similarly, the RAN device could alert the terminating WCD with an alerting signal that causes the terminating WCD to play a particular call ringtone associated with the particular coding technique.

In accordance with example embodiments, the RAN device could be configured for originating the call from the originating WCD, in which case predicting that the particular coding technique will be selected for the requested call could entail determining that the requested call matches a previous call originated by the originating WCD for which the particular coding technique was used. More specifically, the RAN device could determine that one or more call parameters of the received request matches one or more historical call parameters recorded for a previous call in a historical record of calls originated by the originating WCD, and that the particular coding technique was used for the previous call.

The historical record of calls originated by the originating WCD could be a listing the last N calls placed by the originating WCD. Example values of N could be 10, 20, 50, or 100; other values could be used as well. For each call in the historical record of originated calls, historical call parameters recorded could include terminating WCD identity, time of day, originating base station, terminating base station, originating network switch, and terminating network switch. In addition, the coding technique used for each originated call could be recorded, so that a determination of whether the particular coding technique was used could be made for each historical originated call listed. Alternatively, the historical record could be specific to those originated calls for which the particular coding technique is already known to have been used.

Also in accordance with example embodiments, the RAN device could be configured for terminating the call to the terminating WCD, in which case predicting that the particular coding technique will be selected for the requested call could entail determining that the requested call matches a previous call terminated by the terminating WCD for which the particular coding technique was used. More specifically, the RAN device could determine that one or more call parameters of the received request matches one or more historical call parameters recorded for a previous call in a historical record of calls terminated by the terminating WCD, and that the particular coding technique was used for the previous call.

The historical record of calls terminated by the terminating WCD could similarly be a listing the last M calls terminated by the terminating WCD. Example values of M could be 10, 20, 50, or 100; other values could be used as well. For each call in the historical record of terminated calls, historical call parameters recorded could include originating WCD identity, time of day, originating base station, terminating base station, originating network switch, and terminating network switch. In addition, the coding technique used for each terminated call could be recorded, so that a determination of whether the particular coding technique was used could be made for each historical terminated call listed. Alternatively, the historical record could be specific to those terminated calls for which the particular coding technique is already known to have been used.

In accordance with example embodiments, the particular coding technique could be a particular codec that is configured for high fidelity voice communications. More specifically, the particular codec could be configured for HD voice.

In further accordance with example embodiments, subsequent to alerting the originating WCD and/or the terminating WCD of the call with the alerting signal, the particular codec (e.g. the HD voice codec) could be selected for the call. That is, up until the alerting the originating WCD and/or the terminating WCD of the call with the alerting signal indicating the particular codec will be used, selection of the particular codec has only been predicted by the RAN device. After the alerting the originating WCD and/or the terminating WCD, and the prediction may be borne out—e.g., by a protocol-based negotiation between the WCDs that results in selection of the particular code, as predicted.

In accordance with example embodiments in which the wireless communication system is configured to operate according to at least CDMA2000 1× Advanced, predicting that the particular coding technique will be selected for the call could entail predicting that a codec specified according to Enhanced Variable Bitrate Codec (EVRC) EVRC-NW will be selected for the call. More particularly, under CDMA2000 1× Advanced HD voice can be supported using EVRC-NW.

Then, in further accordance with example embodiments, alerting the originating WCD and/or the terminating WCD of the call with the alerting signal that indicates the particular coding technique will be used for the call can entail causing playout at the originating WCD of a customize ringback indicating that the call will be a HD voice call. For example, a special or unique (customize) ringback can be played out by the originating WCD when a RAN device originating the call predicts that a HD codec will be used for the call. The customized ringback could be played delivered as a media stream from the originating RAN device, for example. Alternatively, the customized ringback could be stored as a media file on the originating WCD, and the alerting signal from the originating RAN device could contain information that causes the WCD to play the customized ringback.

Similarly, alerting the originating WCD and/or the terminating WCD of the call with the alerting signal that indicates the particular coding technique will be used for the call can entail causing playout at the terminating WCD of a customize ringtone indicating that the call will be a HD voice call. For example, a special or unique (customize) ringtone can be played out by the terminating WCD when a RAN device terminating the call predicts that a HD codec will be used for the call. The customized ringtone could be played delivered as a media stream from the terminating RAN device, for example. Alternatively, the customized ringtone could be stored as a media file on the terminating WCD, and the alerting signal from the terminating RAN device could contain information that causes the WCD to play the customized ringtone.

Note a RAN device acting as an originating RAN device for the call could be the same or different from RAN device acting as a terminating RAN device for the call. Further, in one example the originating WCD could be caused to playout customized ringback without the terminating WCD being caused to playout customized ringtone. In another example, the terminating WCD could be caused to playout customized ringtone without the originating WCD being caused to playout customized ringback. In still another example, both the originating and terminating WCDs could be cause to play out their respective customized ringback/ringtone.

It will be appreciated that the example embodiment illustrated in FIG. 1 could include alternate and/or additional steps, while still remaining within the scope and spirit of example embodiments herein.

FIG. 2 shows a simplified block diagram of a wireless network 200 that can be operated by a wireless service provider, and in which an example method of customized call setup based on predicted call quality can be carried out. By way of example, the network 200 includes RAN 204 configured to support both CDMA-based air interface communications (e.g., as specified under both IS-2000 and IS-856), RAN 205 configured to support OFDMA-based air interface communications (e.g., as specified under LTE Advanced). For convenience in discussing the example embodiments presented herein, the term “EVDO RAN” will be used for referring to the RAN 204, and the term “LTE RAN” will be used for referring to the RAN 205. It will be appreciated that a network such as network 200 could include support for other types of air-interface technologies as well.

The EVDO RAN 204 includes a CDMA BTS 206 with a CDMA/EVDO air interface antenna 206-T for providing services according to CDMA/EVDO. The LTE RAN 205 includes an LTE eNodeB 200 with an LTE air interface antenna 208-T for providing services according to LTE.

The example illustrated in FIG. 2 also shows three WCDs 202-1, 202-2, and 202-3, each depicted as having at least one active air interface of a particular type with one or another of the antennas 206-T or 208-T. Specifically, the WCD 202-1 has an air interface 201-1 with the LTE RAN 205 via the eNodeB 208 and the associated antenna 208-T. The WCD 202-2 has an air interface 203-1 also with the EVDO RAN 204 via the BTS 206 and the associated antenna 206-T. The WCD 202-2 has two different air interfaces: an air interface 203-2 with the EVDO RAN 204 via the BTS 206 and the associated antenna 206-T, and an air interface 207-2 with the LTE RAN 205 via the eNodeB 208 and the associated antenna 208-T.

As a visual cue of that the air interfaces are different types, the LTE air interfaces are depicted as white-filled “lightning bolts,” and the EVDO air interfaces are depicted as blackened “lightning bolts.” The two air interfaces 207-2 and 203-2 depicted for the WCD 202-3 may be taken as representing a capability of the WCD 202-3 to operate according to either air interface separately, and/or to operate according to both concurrently.

For communications under LTE (or LTE Advanced) based protocols, subscribers may engage in communications via the eNodeB 208 and the associated antenna 208-T from the WCD 202-1 over air interface 207-1 and/or from the WCD 202-3 over air interface 207-2. Transmissions over the air interface 207-1 from the antenna 208-T to the WCD 202-1 represent a downlink from the eNodeB 208 to the WCD 202-1, while transmissions over air interface 207-1 from the WCD 202-1 to the antenna 208-T represent an uplink from the WCD 202-1. Similarly, transmissions over the air interface 207-2 from the antenna 208-T to the WCD 202-3 represent a downlink from the eNodeB 208 to the WCD 202-3, while transmissions over air interface 207-2 from the WCD 202-3 to the antenna 208-T represent an uplink from the WCD 202-3. Under LTE Advanced, the downlink operates according to OFDMA, while the uplink operates according to Single Carrier Frequency Division Multiple Access (SC-FDMA).

The eNodeB 208 may be connected to a serving gateway S-GW 216, which in turn may be connected to an internet 222 via a packet data network gateway PDN-GW 218. The eNodeB 208 could also be connected to the S-GW 216 by way of a mobility management entity MME 214, which may also be configured to control communications between the eNodeB 208 and one or more other eNodeBs in the network. The MME 214 may also be communicatively coupled to a home subscriber server (HSS) 224, which stores subscriber information, including information about the WCD 202-1 and/or WCD 202-3. For cellular voice communications, the eNodeB may connect to a MSC 220 by way of an interworking function IWF 212 communicatively connected between the MME 212 and the MSC 220. The MSC 220 may then provide connectivity of a PSTN 226, as shown.

For communications under CDMA based protocols, subscribers may engage in communications via the BTS 206 and the associated antenna 206-T from the WCD 202-2 over air interface 203-1 and/or from the WCD 202-3 over air interface 203-2. Transmissions over the air interface 203-1 from the antenna 206-T to the WCD 202-2 represent a forward link from the CDMA/EVDO BTS 206 to the WCD 202-2, while transmissions over air interface 203-1 from the WCD 202-2 to the antenna 206-T represent a reverse link from the WCD 202-2. Similarly, transmissions over the air interface 203-2 from the antenna 206-T to the WCD 202-3 represent a forward link, while transmissions over air interface 203-2 from the WCD 202-3 to the 206-T represent a reverse link.

The CDMA BTS 206 may be connected to a BSC 210, which provides a connection to the MSC 220 for cellular voice communications. The MSC 220 acts to control assignment of air traffic channels (e.g., over air interfaces 203-1 and 203-2), and provides access to wireless circuit-switched services such as circuit-voice and circuit-data (e.g., modem-based packet data) service. As represented by its connection to the PSTN 226, the MSC 220 may also be coupled with one or more other MSCs, other telephony circuit switches in the operator's (or in a different operator's) network, or other wireless communication systems, thereby supporting user mobility across MSC regions, roaming between systems, and local and long-distance landline telephone services.

For packet data communications, the IWF 212 connected between the BSC 210 and the MME 214 can support interworking between EVDO based packet protocols and those of the LTE Advanced based network. Thus, the BSC 210 may communicate on the internet 222 by way of the MME 214, the S-GW 216, and the PDN GW 218.

It should be understood that the depiction of just one or two of each network element in FIG. 2 is illustrative, and there could be more of any of them, as well as other types of elements not shown. The particular arrangements shown in FIG. 2 should not be viewed as limiting with respect to the example embodiments presented herein. Further, the network components that make up a wireless communication system such as network 200 are typically implemented as a combination of one or more integrated and/or distributed platforms, each comprising one or more computer processors, one or more forms of computer-readable storage (e.g., disks drives, random access memory, etc.), one or more communication interfaces for interconnection between elements and the network and operable to transmit and receive the communications and messages described herein, and one or more computer software programs (or other forms of computer logic instructions) and related data (e.g., machine-language instructions and program and user data) stored in the one or more forms of computer-readable storage and executable by the one or more computer processors to carry out the functions, steps, and procedures of the various example embodiments described herein. Similarly, a communication device, such as example WCDs 202-1, 202-2, and 202-3, typically comprises a user-interface, I/O components, a communication interface, a tone detector, a processing unit, and data storage, all of which may be coupled together by a system bus or other mechanism. As such, network 200, WCDs 202-1, 202-2, and 202-3, and air interfaces 203-1, 203-2, and 207-1, and 207-2 collectively are representative of example means of implementing and carrying out the various functions, steps, and procedures described herein.

FIG. 3 shows an alternative form block diagram of a wireless communication system 300 depicting, by way of example, aspects specific to CDMA. A WCD 302 communicates over an air interface 303 with a BTS 304-1, which is then coupled or integrated with a BSC 306-1. Transmissions over air interface 303 from BTS 304-1 to AT 302 represent the forward link to the WCD, and transmissions over interface 303 from the WCD 302 to BTS 304-1 represent the reverse link.

The BSC 306-1 is connected to MSC 308-1, which acts to control assignment of air traffic channels (e.g., over air interface 303), and provides access to wireless circuit-switched services such as circuit-voice and circuit-data (e.g., modem-based packet data) service. By way of example, the MSC 308-1 is shown as being connected to a second MSC region represented in the figure by the MSC 308-2, the BSC 306-2, and the BTS 304-2. Support for user mobility across MSC regions, as well as communications between WCDs in different MSC regions, is represented by the connection shown between the MSC 308-1 and 308-2. As represented by their respective connections to PSTN 310, MSCs 308-1 and 308-2 are also coupled with one or more telephony circuit switches, such as the Local Exchange Carrier (LEC) switch 312 in the operator's (or in a different operator's) network. The LEC 312 (or other form of landline switch) may support connectivity to landline subscribers, such as is represented by landline phone 328 connected via the end link 329.

As shown, BSC 306-1 is also connected with a PDSN 316 by way of packet control function (PCF) 314. PDSN 316 in turn provides connectivity with a packet-switched network 318, such as the Internet and/or a wireless carrier's private core packet-network. Sitting as nodes on network 318 are, by way of example, an authentication, authorization, and accounting (AAA) server 320, a mobile-IP home agent (HA) 322, and a remote computer 324. After acquiring an air traffic channel over its air interface, a WCD (e.g., WCD 302) may send a request to PDSN 316 for a connection in the packet data network. Then, following authentication of the WCD by AAA server 320, the access terminal may be assigned an IP address by the PDSN or by HA 322, and may thereafter engage in packet-data communications with entities such as remote computer 324. Although not necessarily shown explicitly in FIG. 3, the BSC 308-2 may also provide a packet data connection to a packet switch network, such the network 318, for packet-data services.

It should be understood that the depiction of just one (or two) of each network element in FIG. 3 is illustrative, and there could be more than one (or two) of any of them, as well as other types of elements not shown. The particular arrangement shown in FIG. 3 should not be viewed as limiting with respect to the embodiments herein. Further, the network components that make up a wireless communication system such as system 300 are typically implemented as a combination of one or more integrated and/or distributed platforms, each comprising one or more computer processors, one or more forms of computer-readable storage (e.g., disks drives, random access memory, etc.), one or more communication interfaces for interconnection between elements and the network and operable to transmit and receive the communications and messages described herein, and one or more computer software programs and related data (e.g., machine-language instructions and program and user data) stored in the one or more forms of computer-readable storage and executable by the one or more computer processors to carry out the functions, steps, and procedures of the various embodiments of the present invention described herein. Similarly, a communication device such as the example WCD 302 typically comprises a user-interface, I/O components, a transceiver, a communication interface, a tone detector, a processing unit, and data storage, all of which may be coupled together by a system bus or other mechanism. As such, system 300, WCDs 302 and 326, air interfaces 303 and 327, landline phone 328, and end link 329 are representative of exemplary means of implementing and carrying out the various functions, steps, and procedures described herein.

1. Example Access Technologies

a. CDMA Communications

In a conventional CDMA wireless network compliant with the well-known IS-2000 standard, each cell employs one or more carrier frequencies, typically 1.25 MHz in bandwidth each, and each sector is distinguished from adjacent sectors by a pseudo-random number offset (“PN offset”). Further, each sector can concurrently communicate on multiple different channels, distinguished by “Walsh codes.” In doing so, each channel is allocated a fraction of the total power available in the sector. When a WCD operates in a given sector, communications between the WCD and the BTS of the sector are carried on a given frequency and are encoded by the sector's PN offset and a given Walsh code. The power allocated to each channel is determined so as to optimize the signal to noise characteristics of all the channels, and may vary with time according to the number of WCDs being serviced, and their relative positions with respect to the BTS, among other factors.

Air interface communications are divided into forward link communications, which are those passing from the base station to the WCD, and reverse link communications, which are those passing from the WCD to the base station. In an IS-2000 system, both the forward link and reverse link communications in a given sector are encoded by the sector's PN offset and a given Walsh code. On the forward link, certain Walsh codes are reserved for use to define control channels, including a pilot channel, a sync channel, and one or more paging channels (depending on service demand, for example), and the remainder can be assigned dynamically for use as traffic channels, i.e., to carry user communications. Similarly, on the reverse link, one or more Walsh codes may be reserved for use to define access channels, and the remainder can be assigned dynamically for use as traffic channels.

In order to facilitate efficient and reliable handoff of WCDs between sectors, under IS-2000 a WCD can communicate on a given carrier frequency with a number of “active” sectors concurrently, which collectively make up the WCD's “active set.” Depending on the system, the number of active sectors can be up to six (currently). The WCD receives largely the same signal from each of its active sectors and, on a frame-by-frame basis, selects the best signal to use. A WCD's active set is maintained in the WCD's memory, each active sector being identified according to its PN offset.

The WCD continually monitors a pilot signal from each of its active sectors as well as from sectors in a “neighbor list” of other sectors generally neighboring the active sectors. The pilot signal strengths may vary as the WCD moves about within the wireless communication system, or as other factors cause the WCD's RF conditions to change. More particularly, the WCD monitors a signal-to-noise metric referred to as “signal to interference plus noise ratio” (“SINR”), which includes the degrading effects of interference as well as noise on RF conditions. The WCD reports the received signal strengths to the serving base station, which then directs the WCD to update its active set from among its current active set and, more broadly, from among its neighbor list, in accordance with the reported strengths and one or more threshold conditions.

Typically, the power level of the pilot detected by a WCD is specified as a gain level, x, according to the relation x dBm=10 log₁₀(P/1 mW), where P is the power in mW (milliwatts). However, other power units could be specified. Measured in dBm, gain expresses a logarithmic ratio of power P to a fixed power level of 1 mW. More generally, the relative gain, y, of one power level P₁ to another P₂ is expressed as dB, and corresponds to a logarithmic ratio of P₁ to P₂ given by y dB=10 log₁₀(P₁/P₂). For instance, if y=3, then P₁≈2×P₂; if y=−3, then P₁≈0.5×P₂. In practice, SINR is measured in dB, where P₁ corresponds to the received power of the pilot and P₂ corresponds to the received noise plus interference power.

In order to support concurrent communication in multiple channels on a common frequency, each channel is allocated a fraction of the total forward-link power available in the sector. The power allocated to each channel is determined so as to optimize the signal-to-noise characteristics of all the channels, and may vary with time according to the number of access terminals being serviced, and their relative positions with respect to the BTS, among other factors. Similarly, on the reverse links, each access terminal transmits at a power level that optimizes the signal-to-noise while minimizing interference with other access terminals.

With arrangement described above, an access terminal can engage in cellular voice or packet-data communications. Referring again to FIG. 3, and taking an originating call from WCD 302 as an example, WCD 302 first sends an origination request over air interface 303 and via the BTS 304-1 and BSC 306-1 to MSC 308-1. The MSC then signals back to the BSC directing the BSC to assign an air interface traffic channel for use by the access terminal. For a voice call, the MSC uses well-known circuit protocols to signal call setup and establish a circuit connection to a destination switch that can then connect the call to a called device (e.g., landline phone or another access terminal).

For a packet-data session, the BSC 306-1 signals to the PDSN 316 by way of PCF 314. The PDSN 316 and the WCD 302 then negotiate to establish a data link layer connection, such as a point to point protocol (PPP) session. Further, the PDSN 316 sends a foreign agent advertisement that includes a challenge value to the WCD, and the access terminal responds with a mobile-IP registration request (MIP RRQ), including a response to the challenge, which the PDSN forwards to HA 322. The HA then assigns an IP address for the WCD to use, and the PDSN passes that IP address via the BSC to the access terminal.

b. High Rate Packet-Data TDM Communications

Under IS-2000, the highest rate of packet-data communications theoretically available on a fundamental traffic channel of the forward link is 9.6 kbps, dependent in part on the power allocated to the forward-link traffic channel and the resultant signal to noise characteristics. In order to provide higher rate packet-data service to support higher bandwidth applications, the industry introduced a new “high rate packet data (HRPD) system,” which is defined by industry standard IS-856 (or EVDO).

IS-856 leverages the asymmetric characteristics of most IP traffic, in which the forward link typically carries a higher load than the reverse link. Under IS-856, each WCD maintains and manages an active set and a neighbor list as described above, but receives forward-link transmission from only one active sector at a time. In turn, each sector transmits to all its active WCDs on a common forward link using time division multiplexing (TDM), in order to transmit to only one WCD at a time, but at the full power of the sector. As a result of the full-power allocation by the sector, a WCD operating under IS-856 can, in theory, receive packet-data at a rate of at least 38.4 kbps and up to 2.4 Mbps. The reverse link under IS-856 retains largely the traditional IS-2000 code division multiplexing (CDM) format, albeit with the addition of a data rate control (DRC) channel used by the WCD to indicate the supportable data rate and best serving sector for the forward link. More specifically, the WCD monitors SINR on the forward link from its serving sector (or base station) to determine a data rate to request. The requested data rate is encoded in a DRC request, and transmitted to the serving base station on the DRC channel, which is a sub-channel of a reverse-link Medium Access Control (MAC) channel.

TDM access on the IS-856 forward link is achieved by dividing the forward link in the time domain into time slots of length 2048 chips each. At a chip rate of 1.228 Mega-chips per second, each slot has a duration of 1.67 milliseconds (ms). Each time slot is further divided into two 1024-chip half-slots, each half-slot arranged to carry a 96-chip pilot “burst” (pilot channel) at its center and a forward-link MAC channel in two 64-chip segments, one on each side of the pilot burst. The remaining 1600 chips of each time slot (800 per half-slot) are allocated for a forward traffic channel or a forward control channel, so that any given time slot will carry either traffic-channel data (if any exists) or control-channel data. As in IS-2000, each sector in IS-856 is defined by a PN offset, and the pilot channel carries an indication of the sector's PN offset.

Operation in an IS-856 compliant communication system may be illustrated, again with reference to FIG. 3. To acquire packet data connectivity under IS-856, after the WCD 302 first detects an IS-856 carrier, the WCD 302 sends to its BSC (or RNC) 306-1 a UATI (Universal Access Terminal Identifier) request, and receives in response an UATI, which the WCD can then use to identify itself in subsequent communications with the BSC. The WCD then sends a connection-request to the BSC 306-1, and the BSC responsively invokes a process to authenticate the WCD and to have the WCD acquire a data link.

In particular, the BSC 306-1 sends an access request to an Access Network AAA (ANAAA) server (which may be different than the AAA server 320), and the ANAAA server authenticates the WCD. The BSC 306-1 then assigns radio resources for the data session, providing a MAC identifier (“MAC ID”) to the WCD for identifying its time-slot data sent in the forward-link traffic channel, and a Walsh code for a sending data on the reverse-link traffic channel. Further, the BSC 306-1 signals to the PDSN 316 (via PCF 314), and the PDSN and WCD then negotiate to establish a PPP data link. In addition, as in the IS-2000 process, the WCD then sends an MIP RRQ to the PDSN, which the PDSN forwards to the HA 322, and the HA assigns a mobile-IP address for the WCD to use.

Once the WCD has acquired an IS-856 radio link, a data link, and an IP address, the WCD is considered to be in an active mode. In active mode, the WCD receives its data distributed across MAC-identified time slots transmitted by the BTS using the full power of the forward link of the sector selected by the WCD (as described above). Thus, the WCD recognizes its time-slot data from among other time slots by a MAC identifier included in each transmission, and processes only those time slots with the WCD's assigned MAC identifier. Using the full power of the forward link maximizes the signal-to-noise ratio, thus facilitating higher rate data communication than the power-limited conventional CDMA channels.

c. LTE Advanced Communications

Under LTE Advanced, the air interface comprises multiple frequency carrier bands arranged to cover a total bandwidth in frequency space that depends on what portion or portions of the radio spectrum are licensed by the network service provider, and on which of two types of systems is deployed, which in turn may also depend on the licensed spectrum. In frequency division duplex (FDD) LTE, the uplink and down link each occupy a different block of radio spectrum, each block providing up to 20 MHz of bandwidth in frequency space. Under FDD LTE, uplink and downlink transmissions can be concurrent. In time division duplex (TDD) LTE, the uplink and downlink each occupy the same block of radio spectrum. Under TDD LTE, uplink and downlink transmissions take turns according to configuration-specific allocation of subframes within repeating radio transmission frames.

For both FDD and TDD LTE, each frequency carrier band is divided into 12 orthogonal subcarrier frequencies, each 15 kHz in width, for a total of 180 kHz per frequency carrier band. The number of frequency carrier bands corresponds to the integer division of the total bandwidth by 180 kHz. For example, a total bandwidth of 1.25 MHz supports six frequency carrier bands; a total bandwidth of 20 MHz supports 100 frequency carrier bands. The orthogonality of the subcarrier frequencies follows from each being an integer multiple of the same minimum frequency; e.g., 15 kHz. It will be appreciated that a different minimum frequency could be used, as long as the orthogonality condition is met. Similarly, a different number of subcarrier frequencies per frequency carrier band could be used, which could then lead to a different number frequency carrier bands for a given total bandwidth.

In the time domain, both the uplink and downlink comprise time slots, each time slot typically of 0.5 msec duration. Every two time slots makes up one “subframe” of 1.0 msec duration, and every 10 subframes makes up a 10 msec frame. In FDD LTE, each subframe of a frame carries only uplink or only downlink transmission. In TDD LTE, each frame includes both uplink and downlink subframes, the relative number of and placement of each type of subframe typically being specified by defined standards and/or a system-specific configuration.

Each time slot is subdivided into an integer number of symbol durations, such that the integer number multiplied by the symbol duration equals 0.5 msec. According to current standards, the integer number is either 6 or 7; the value used depends on operating conditions, among other possible factors. For the purposes of the present discussion the integer number of symbol durations per time slot will be taken to be 7, with the understanding that other values could be used.

Transmissions are scheduled in time-frequency units referred to as “resource blocks” or RBs. Each RB is made up of 7 contiguous symbol durations (i.e., one time slot) and 12 subcarrier frequencies of a given frequency carrier band. Thus, a RB can be viewed a grid of 7 symbol durations by 12 subcarrier frequencies. Each element of the grid is referred to as “resource element,” and each resource element carries one OFDM symbol. Each OFDM symbol of a resource element is a time domain symbol generated from Fourier superposition frequency domain symbols. On given uplink or downlink, concurrent transmissions carried in different RBs are non-interfering in the sense that the subcarrier frequencies are orthogonal. Thus, while a receiving device (e.g., a UE on a downlink or an eNodeB on an uplink) will receive a superposition signal, the orthogonality property allows recovery by Fourier decomposition of the symbols in the frequency domain.

A single RB is the smallest unit of allocation made for a given WCD for downlink transmissions. Allocations are typically made by an eNodeB serving the WCD, and more than one RB can be allocated for the WCD. Multiple RB allocations for a given WCD can be made across multiple frequency carrier bands, across multiple time slots, or both, depending on factors including the amount of data to be transmitted to the WCD, the type of data (e.g., best-effort, real-time, etc.), and downlink resources needed for other WCDs.

In addition to carrying OFDM symbols specific to a given WCD, particular resource elements of a given RB are allocated as “reference signals,” and may be used to carry pilot signals from the eNodeB. Upon detection of a pilot signal in one or more resource elements of an RB, a WCD may determine SINR of the eNodeB (or more generally, the LTE Advanced base station) that made the RB-based transmission. The WCD may then use the SINR (or other SNR measure) of different eNodeBs that it detects to determine if and when to hand off from one to another, for example. Specific RBs of the downlink can also be configured as channels for carrying system messages and/or other overhead data. In addition, specific RBs of the uplink can be configured to support a random access procedure by which WCDs can request network access on a random basis. This is discussed in more detail below.

Under LTE, the network provides the WCD with neighbor lists that identifies neighboring eNodeBs that may be suitable candidates for service for the WCD. The WCD can measure signal quality of those eNodeBs in the neighbor list that it can detect, and report the measurements back to the network. The network can then decide if a handover (as handoff is referred to under LTE) is warranted.

2. Customizing Ringtone/Ringback Based on Predicted Codec

When a communication session, such as a voice call, is set up with a WCD operating in a wireless communication system, a forward link from the base station to the WCD, and a reverse link from the WCD to the base station, is established on an air interface between the WCD and the base station. For a voice call, in particular, a voice codec—or more generally, a media codec—can be selected by the base station (or other RAN element) for each of the forward link and the reverse link. In addition, setup of a voice call between two WCDs can entail “negotiation” between the two in order to determine (e.g., select) an appropriate codec for end-to-end communications.

Media codecs may be either lossless or lossy. Lossless media codecs may use an encoding format that allows the encoded media to be decoded back to its original format. Thus, lossless media codecs may support high quality transmission and storage of media.

On the other hand, some media codecs are lossy. Lossy codecs are typically used on media for which some degree of degradation is acceptable. For instance, compact disc audio can be compressed to about 10-20% of its size (i.e., achieving about 80-90% compression) by using an MP3 codec to discard the audio components that are beyond the auditory resolution ability of most individuals. Thus, to most listeners, music encoded in the MP3 format sounds about the same as it would if played directly from the compact disc. Similarly, voice codecs may take advantage of psychoacoustics to remove redundant or less audible components of voice signals, resulting in about 80-90% compression of the voice signal.

In practice, different lossy codecs may support different extents of lossy compression (e.g., some codecs will support compression with more loss than other codecs). Some lossy codecs may support multiple extents of lossy compression (e.g., a particular codec may select between two or more rates of lossy compression).

In general, there may be a roughly linear relationship between media codec bitrate and the media quality that the media codec produces at that bitrate. For example, a voice codec operating at 9.6 kilobits per second is likely to produce better quality voice than a voice codec operating at 4.8 kilobits per second. However, as media codec technologies advance, new media codecs may be introduced that are capable of supporting equal or better media quality at a lower bitrate. Thus, in some cases, a voice codec that operates at 8.5 kilobits per second may produce better voice quality than the voice codec operating at 9.6 kilobits per second. Furthermore, some voice codecs are capable of supporting multiple different encoding rates, and perhaps even switching between these rates dynamically to adapt to the characteristics of the input signal and/or to achieve a target bitrate.

Codecs typically comply with one or another industry standard in order to help insure interoperability. For example, CDMA 2000 Spread Spectrum Systems (also referred to as CDMA2000 1×) and CDMA 2000 Spread Spectrum Systems Revision E (also referred to as CDMA2000 1× Advanced) specify support for a family of codecs referred to under the umbrella of “Enhanced Variable Bitrate Codec,” or “EVRC.”

By way of example, the EVRC-A codec operates on input speech signals sampled with 16-bit resolution 8,000 times per second (e.g., 8,000 Hz). The resulting 128 kilobit per second stream is divided into 20 millisecond frames, each of which is compressed to either 171 bits (8.55 kilobit per second), 80 bits (4.0 kilobits per second), or 16 bits (0.8 kilobits per second).

The EVRC-B codec also operates on input speech signals sampled with 16-bit resolution 8,000 times per second, and supports the three compressed bitrates supported by EVRC-A. However, EVRC-B also supports a compressed frame size of 40 bits (2.0 kilobits per second). Further, EVRC-B defines eight levels of average data rates that may be selected for encoding on a forward link to, and/or a reverse link from. Generally, a higher the data rate requires higher transmission power, but provides the better the voice quality, and vice versa. The eight levels are referred to as “capacity operating points” or “COPs,” and are labeled with parameter values 0 through 7, in order from highest to lowest average data rate. When a given call is set up, the RAN (or RAN element, such as a BSC) selects a COP value based on capacity utilization of the sector in which the WCD is operating. The COP value may also be adjusted by the RAN as the WCD moves between sectors that have differing capacity loading conditions.

Table 1 lists the COP parameters values (first column) and corresponding channel encoding rates (second column), source encoding rates (third column), and average data rates (fourth column) for EVRC-B. The average data rates include bits for silence intervals.

TABLE 1 Channel Rate Source Rate Average Rate COP (kbps) (kbps) (kbps) 0 9.3 8.3  6.93 1 8.5 7.57 6.42 2 7.5 6.64 5.52 3 7.0 6.18 5.24 4 6.6 5.82 4.82 5 6.2 5.45 4.62 6 5.8 5.08 4.45 7 4.8 4.0  3.75

As can be seen, lower COP values correspond to higher data rates, and vice versa. Generally, COPs 0-3 specify encoding rates that yield the highest voice quality, but requires the highest transmission powers. COP 4 specifies encoding rate that yield voice quality comparable to EVRC, but requires slightly lower transmission power than EVRC, while COPs 5-7 specify encoding rates that yield the lower voice quality than EVRC, but requires even lower transmission powers.

The EVRC-WB codec is a “wideband” variation of EVRC-B. Particularly, EVRC-WB operates on input speech signals sampled with 16-bit resolution at 8,000 or 16,000 times per second. When sampling at the rate of 8,000 times per second, frames encoded with EVRC-WB can be compatible with EVRC-B encodings. When sampling at 16,000 times per second, frames encoded with EVRC-WB are 171 bits (8.55 kilobit per second). However, unlike the 171 bit frames produced when sampling at 8,000 times per second, the EVRC-WB frames include high-frequency components from the 3.5 kHz to 7 kHz range. Thus, at the same bitrate, EVRC-WB may be capable of producing higher quality voice calls than EVRC-A or EVRC-B. Because of the ability to support higher voice quality with EVRC-WB, it can be used for high fidelity voice calls—i.e., HD voice. In addition to its own target bitrates, EVRC-WB supports two of the operating points of EVRC-B. EVRC-WB also supports a mode for improved encoding of non-speech signals, such as music-on-hold.

The EVRC-NW codec supports at least some of the encodings of both EVRC-B and EVRC-WB, and, like EVRD-WB, can be used for HD voice calls. Particularly, EVRC-NW supports the sampling frequencies and frame sizes of EVRC-WB. Also, EVRC-WB supports seven of the operating points (and associated target bitrates) of EVRC-B, and also supports the mode for improved encoding of non-speech signals. Thus, EVRC-NW is fully compatible with EVRC-WB, and supports more operating modes of EVRC-B than EVRC-WB.

Each of the different EVRC options can be selected by including a specific CDMA “service option” (“SO”) one or more types of call setup/management messages. For example, EVRC-A can be selected according SO 3; EVRC-B can be selected according to SO 68; EVRC-WB can be selected according to SO 70, and EVRC-NW selected according to SO 73. In order to establish an HD voice call between two WCDs, for example, EVRC-NW needs to be support by both WCDs. During initial call setup, SO 73 can be specified. Then, if operating conditions allow, COP 0—the highest quality available—can be chosen. With SO 73 and COP 0, the call can be a HD call.

Under conventional operation, SO 73 may be selected during a phase of call setup that precedes alerting the originating and terminating WCDs, but determination that COP 0 can be used is made only after alerting has already taken place. Consequently, the opportunity to alert the originating and/or terminating WCDs via ringback and/or ringtone that the call will be a HD call is lost. Correspondingly, any benefit that could be derived from advance alerting of an HD call is not possible with a conventional call setup procedure.

In accordance with example embodiments, the selection of SO 73 with COP 0—and more generally, selection of a codec for HD voice—can be predicted by a RAN device, such as a base station, BTS, BSC, or MSC, for example, prior to call alerting of the originating and terminating WCDs. Then, based on a prediction that an HD codec will be selected, the originating and/or terminating WCDs can be alerted with a signal that indicates a HD voice call. The indication that the call will be HD voice can then be used to cause the originating WCD to play out a customized ringback associated with HD voice. Similarly, the indication can be used to cause the terminating WCD to play out a customized ringtone, also associated with HD voice. In this way, the called party (e.g., terminating user/subscriber) can be made aware prior to answering the new call will that it will be an HD call. Similarly, the calling party (e.g., originating user/subscriber) can be made aware that the called party is being alerted to an incoming HD call. Because codec selection—and in particular, HD voice codec selection—can be considered a determinant of call quality, predicting that an HD voice codec will be selected can correspondingly be considered a form of predicting call quality. Accordingly, example embodiments can be described in a general sense as customizing call setup based on predicted call quality.

FIG. 4 is a call flow illustrating an example call setup customized based on predicted call quality could be implemented, in accordance with example embodiments. By way of example, an originating WCD (labeled “O-WCD”) 402 is shown as placing a call to a terminating WCD (labeled “T-WCD”) 410. Network elements involved the message flow include an originating base station (labeled “T-BS”) 404, an MSC/MGW (media gateway) 406, and a terminating base station (labeled “T-BS”) 408. For purposes of discussion, a number of aspects of the call setup are labeled with a circled number. However, not every message in the call flow is necessarily identified in this manner.

At step 1, the O-WCD 402 requests the new call by sending an origination message to the O-BS 404 indicating SO 3 (EVRC-A) and alternate service options SO 68 and 73 (EVRC-B and EVRC-NW).

At step 2, in accordance with example embodiments, the O-BS 404 predicts that the call will be an HD voice call. More particularly, the O-BS 404, upon receiving the new call request, can use a call history for the O-WCD 402 to determine that the new call requested matches a previous call placed by the O-WCD 402 that was an HD call (e.g., that parameters of the new call match parameters recorded for the previous call listed in the call history). Based on the match, the O-BS 404 can then predict that the new requested call will also be an HD call.

The O-BS 404 then sends a connection management service request message to the MSC/MGW 406, which the sends a paging request message to the terminating T-BS 408. Both messages indicate the EVRC-NW codec, as shown.

On the originating side of the call, the MSC/MGW 406 then responds to the connection management service request message by sending an assignment request message confirming the EVRC-NW codec to the O-BS 404. The O-BS 404 next sends a general extension message to the O-WCD 402 with a channel assignment, and then a service connect message with SO 73 indicating the EVRC-NW codec. The O-WCD 402 responds with a service complete message, and the O-BS 404 confirms the channel assignment by sending an assignment complete message to the MSC/MGW 406. At this point, an air interface channel between the O-WCD 402 and the O-BS 404 has been established for the call.

At step 3, on the terminating side of the call, the T-BS 408 predicts that the call will be an HD voice call, in accordance with example embodiments. More particularly, the T-BS 408, upon receiving the new call request, can use a call history for the T-WCD 410 to determine that the new call requested matches a previous call to the T-WCD 410 that was an HD call (e.g., that parameters of the new call match parameters recorded for the previous call listed in the call history). Based on the match, the T-BS 408 can then predict that the new requested call will also be an HD call.

Continuing on the terminating side of the call, the T-BS 408 sends a general page message with SO 73 to the T-WCD 410, to which the T-WCD 410 responds with a page response message. The T-BS 408 then responds to the MSC/MGW 406 with a paging response message, and to the T-WCD 410 with an acknowledgement. The MSC/MGW 406 then responds to the paging response message by sending an assignment request message confirming the EVRC-NW codec to the T-BS 408. The T-BS 408 next sends a general extension message to the T-WCD 410 with a channel assignment, and then a service connect message with SO 73 indicating the EVRC-NW codec. The T-WCD 410 responds with a service complete message, and the T-BS 408 confirms the channel assignment by sending an assignment complete message to the MSC/MGW 406. At this point, an air interface channel between the T-WCD 410 and the T-BS 408 has been established for the call.

At step 4, once the air interface channel between the O-WCD 402 and the O-BS 404 has been established, the O-BS 404 sends an alerting signal to the O-WCD 402. In accordance with example embodiments, the O-BS 404, based on its prediction from step 2, includes an indication that the call will be an HD call in the alerting. Also in accordance with example embodiments, the indication in the alerting signal cause the O-WCD 402 to play out a customized ringback that signifies the call will be an HD call. Note playout of the customized ringback can be accomplished by causing the O-WCD 402, in response to receiving the indication of an HD call, to play out a stored media file containing the customized ringback. As an alternative, playout of the customized ringback can be accomplished by streaming the customized ringback from the O-BS 404. In one example of streaming, the alerting signal from the O-BS 404 could be the streaming media data.

Similarly, at step 5, once the air interface channel between the T-WCD 410 and the T-BS 408 has been established, the T-BS 408 sends an alerting signal to the T-WCD 410. In accordance with example embodiments, the T-BS 408, based on its prediction from step 3, includes an indication that the call will be an HD call in the alerting. Also in accordance with example embodiments, the indication in the alerting signal cause the T-WCD 410 to play out a customized ringtone that signifies the call will be an HD call. Note playout of the customized ringtone can be accomplished by causing the T-WCD 410, in response to receiving the indication of an HD call, to play out a stored media file containing the customized ringtone. As an alternative, playout of the customized ringtone can be accomplished by streaming the customized ringtone from the T-BS 408. In one example of streaming, the alerting signal from the T-BS 408 could be the streaming media data.

In some instances, a terminating WCD might have one or more customized ringtones already configured for providing distinctive tones (e.g., sounds, music, etc.) for all or some inbound calls, calls from particular users, or calls from particular groups of users, for example. In accordance with example embodiments, a customized ringtone for indicating that an inbound call will be an HD call can be different than any of these other one or more customized ringtones already configured. Further, the terminating WCD can be set or configured such that playout of the customized ringtone for indicating that an inbound call will be an HD call can supersede playout of any of these other one or more customized ringtones already configured. With this setting, alerting the terminating WCD that an inbound call will be an HD call can take precedence over using one of the already configured customized ringtones. Alternatively, the terminating WCD can be set or configured such that playout of any of these other one or more customized ringtones already configured can supersede playout of the customized ringtone for indicating that an inbound call will be an HD call. With this setting, using one of the already configured customized ringtones can take precedence over alerting the terminating WCD that an inbound call will be an HD call.

Similarly, in some instances, a terminating WCD might have one or more customized ringbacks already configured for providing distinctive tones (e.g., sounds, music, etc.) to all or some originating callers (e.g., particular callers or groups of callers) to the terminating WCD. If one such originating caller happens to be an originating WCD, and the call is predicted to be an HD call, as described above, the playout of a ringback at the originating WCD can be either one of the customized ringbacks already configured by the terminating WCD, or the customized ringback indicating that the call will be an HD call. More specifically, in accordance with example embodiments, a customized ringback for indicating that the call will be an HD call can be different than any of these other one or more customized ringbacks already configured. Further, the originating WCD can be set or configured such that playout of the customized ringback for indicating that the call will be an HD call can supersede playout of any of these other one or more customized ringbacks already configured. With this setting, alerting the originating WCD that a call will be an HD call can take precedence over using one of the already configured customized ringbacks. Alternatively, the originatng WCD can be set or configured such that playout of any of these other one or more customized ringbacks already configured can supersede playout of the customized ringtone for indicating that a call will be an HD call. With this setting, using one of the already configured customized ringbacks can take precedence over alerting the originating WCD that the call will be an HD call.

As described in more detail below, the O-BS 404 and the T-BS 408 can have complimentary call histories for the O-WCD 402 and the T-WCD 410, such that the two base stations can make the same prediction regarding the new call being an HD call. In this way, the O-BS 404 can send (at step 4) an alerting signal to the O-WCD 402 that causes customized ringback indicating an HD call, and the T-BS 408 can send (at step 5) an alerting signal to the T-WCD 410 that causes customized ringtone, also indicating an HD call.

At this point in the call setup, a bi-directional audio connection between the O-WCD 401 and the T-WCD 410 has been established, as indicated at step 6. The codec for the call is EVRC-NW (SO 73) with COP 4, as shown. That is, the call has been set up with an HD-capable codec, but not with the HD mode selected (e.g., COP 0). The selection of COP 4 can be considered a possible default for the initial voice call setup.

The call can be established as an HD call in a subsequent phase of call setup as shown at step 7. More specifically, the O-WCD 402 can respond to a status request message from the O-BS 404 with a status response message that include SO 73 (EVRC-NW) and COP 0 (for an HD call). The O-BS 404 then sends a bearer update required message with EVRC-NW and COP 0 to the MSC/MGW 406, and the MSG/MGW 406 responsively sends a bearer update request the message with EVRC-NW and COP 0 to the T-BS 408. The T-BS 408 then sends a status request message to the T-WCD 410, which responds at step 8 with a status response message that includes SO 73 (EVRC-NW) and COP 0 (for an HD call). In response, the T-BS 408 next sends a bearer update response message with EVRC-NW and COP 0 to the MSC/MGW 406.

Upon receiving the bearer update response message from the T-BS 408, the MSC/MGW 406 sends a bearer update request the message with EVRC-NW and COP 0 to the O-BS 404. The O-BS 404 responds by sending a bearer update response message with EVRC-NW and COP 0 to the MSC/MGW 406, and (at step 9) by sending a service option control (SOCM) message with COP 0 to the O-WCD 402.

Upon sending the bearer update response message on the terminating side, the T-BS 408 (at step 10) sends a service option control (SOCM) message with COP 0 to the T-WCD 410. As indicated at step 11, a bi-directional audio connection between the O-WCD 401 and the T-WCD 410 with SO 73 and COP 0 is now established. That is, an HD call is now set up between the two WCDs. In accordance with example embodiments, both WCDs were alerted that the call would be an HD call before the COP 0 for the EVRC-NW codec was selected, or more generally, before an HD codec was selected. Also in accordance with example embodiments, the RAN devices that originated and terminate the new call (O-BS 404 and T-BS 408 in the example illustrated in FIG. 4) both predicted that the call would be an HD call before alerting the originating and terminating WCDs (O-WCD 402 and T-WCD 410 in the example).

FIG. 5 illustrates example historical call records that can be used for predicting call that a requested call, such as the one discussed in the example above, will be an HD voice call. More particularly, a RAN device that originates and/or terminates a call between two WCDs can maintain a historical record of call originated and/or terminated by one or both of the WCDs, and can consult the historical record upon a new call request to set up a call between the two WCDs in order to predict if the new call will be an HD call.

Table 502 in FIG. 5 is an example of a historical record of the last N HD voice calls originated from a WCD having a phone number 913-222-XXXX, where “XXXX” represents an arbitrary four-digit post-fix sequence for the originating WCD. The number N could be 50, although other values could be used. By way of example, for each historical originating call listed, table 502 a record of the originating WCD number (the same for each call in this example table), the originating BTS (identified in this illustration by a single letter designation), a terminating WCD number (where “YYYY” represents an arbitrary four-digit post-fix sequence for each terminating WCD), the terminating BTS (again, identified in this illustration by a single letter designation), and a time of day of the call.

In a similar manner, Table 504 in FIG. 5 is an example of a historical record of the last M HD voice calls terminated to a WCD having a phone number 608-581-YYYY, where, again “YYYY” represents an arbitrary four-digit post-fix sequence for the terminating WCD. The number M could be 50, although other values could be used. By way of example, for each historical originating call listed, table 504 a record of the terminating WCD number (the same for each call in this example table), the terminating BTS (identified in this illustration by a single letter designation), an originating WCD number (where “XXXX” represents an arbitrary four-digit post-fix sequence for each originating WCD), the originating BTS (again, identified in this illustration by a single letter designation), and a time of day of the call.

Predicting that a requested new call will be an HD call—and in particular, coordination the prediction at both the originating and terminating sides of the new call—can be illustrated by way of example by considering corresponding entries in tables 502 and 504. More particularly, if a RAN device acting as an originating RAN device (e.g., a BTS) receives a call request from a WCD with the number 913-222-XXXX (to place a new call to another WCD with the number 608-581-YYYY, the originating RAN device can consult table 502 for the originating WCD. In the example table 502, the originating RAN device would find a historical record of the originating WCD having placed a call to the same terminating WCD. The record would also indicate that the BTS “V” originated the call, that the BTS “Q” terminated the call, and that the call took place in the afternoon. By virtue of being listed in table 502, the historical call would be known to have been an HD voice call. If the originating RAN device (which could be the BTS “V,” for example) determined that the requested call originated and terminated at the same two BTSs (“V” and “Q,” respectively in this example), and that the new call is also be placed in the afternoon, then the originating RAN device could predict that the new call will also be an HD call. This prediction corresponds to step 2 in the call flow illustrated in FIG. 4.

In a similar way, when a RAN device acting as a terminating RAN device (e.g., a BTS) receives a request to terminate the call from a WCD with the number 913-222-XXXX (to a WCD with the number 608-581-YYYY, the terminating RAN device can consult table 504 for the terminating WCD. In the example table 504, the terminating RAN device would find a historical record of the terminating WCD having received a call from the same originating WCD. The record would also indicate that the BTS “Q” terminated the call, that the BTS “V” originated the call, and that the call took place in the afternoon. By virtue of being listed in table 504, the historical call would be known to have been an HD voice call. If the terminating RAN device (which could be the BTS “Q,” for example) determined that the requested call terminated and originated at the same two BTSs (“Q” and “V,” respectively in this example), and that the new call is also be placed in the afternoon, then the originating RAN device could predict that the new call will also be an HD call. This prediction corresponds to step 3 in the call flow illustrated in FIG. 4.

Since tables 502 and 504 contain corresponding information for the historical call (as indicated by the curved, double arrow pointing to the corresponding records)—one in the form of an originating call, the other in the form of a terminating call—both RAN devices would make the same prediction regarding the new call being an HD call. Both RAN devices would predict that an HD voice codec would be selected for the new call, and could there send respective alerting signals to the originating and terminating WCDs. The WCDs could, in turn, be caused to play out customized ringback and/or ringtone indicating that the new call will be an HD call.

A similar procedure could be carried out by a RAN device for any WCD-to-WCD call request received—as an originating request, a terminating request, or both. More, fewer, and/or different specific historical call parameters than those illustrated by way of example in FIG. 5 could be used to match against corresponding parameters of the new requested call in predicting whether the new call will be an HD call. It will be appreciated that tables 502 and 504 could take different forms than the ones illustrated. For example, since table 502 is already specific to the originating WCD, each call record entry in the table need not necessarily list the originating WCD's number. Similarly, since table 504 is already specific to the terminating WCD, each call record entry in the table need not necessarily list the terminating WCD's number. In addition, the information in the tables could be constructed on a call-by-call basis using other stored information, such as call detail records (CDRs) for the individual WCDs.

In accordance with example embodiments, tables 502 and 504 (or similarly functional data structures) could be stored in some form of memory associated with the RAN device. Examples could include random access memory (“RAM”), solid state memory, and magnetic disk memory. Other appropriate forms of memory could be used as well.

Also in accordance with example embodiments, each table could be updated as new HD calls are set up. More particularly, each table could be configured to contain a fixed number entries (e.g., N and M in the example illustrated in FIG. 5) is a sort of “push-down” queue. When a new HD call ends and is entered into the historical record as the most recent HD call, the oldest call in the list could be deleted. Other techniques for managing a fixed-length historical record could be used as well, and the size of fixed length could be adjusted from time to time.

3. Example Radio Access Network Device

FIG. 6 is a simplified block diagram depicting functional components of an example RAN device 602, such as BTSs 304-1 and 304-2, in which an example embodiment of customized call setup based on predicted call quality could be implemented. As shown in FIG. 6, the RAN device 602 includes a transceiver 604, network interface 606, a processing unit 614, and data storage 608, all of which may be coupled together by a system bus 616 or other mechanism. In addition, the base station 602 may also include external storage, such as magnetic or optical disk storage, although this is not shown in FIG. 6.

These components may be arranged to support wireless communications in a wireless communication network that is compliant with a variety of wireless air-interface protocols, such as network 200 illustrated in FIG. 2 and/or network 300 illustrated in FIG. 3. In particular, these components can support customized call setup based on predicted call quality, in accordance with example embodiments.

Network interface 606 enables communication on a network, such network 300. As such, network interface 606 may take the form of an Ethernet network interface card or other physical interface to a broadband connection to the internet or some other data network. Further, the RAN device 602 can also include a transceiver 604, which may include one or more antennas, enables air interface communication with one or more WCDs, supporting both downlink (or forward link) and uplink (or reverse link) transmissions.

Processing unit 614 comprises one or more general-purpose processors (e.g., INTEL microprocessors) and/or one or more special-purpose processors (e.g., dedicated digital signal processor, application specific integrated circuit, etc.). In turn, the data storage 608 comprises one or more volatile and/or non-volatile storage components, such as magnetic or optical memory or disk storage. Data storage 608 can be integrated in whole or in part with processing unit 614, as cache memory or registers for instance. As further shown, data storage 608 is equipped to hold program logic 610 and program data 612.

Program data 612 may comprise data configuration parameters. Program logic 610 may comprise machine language instructions that define routines executable by processing unit 614 to carry out various functions described herein. In particular the program logic, communication interface, and transceiver may operate cooperatively to carry out logical operation, such as that described by way of example in FIG. 1, as well other functions discussed above.

It will be appreciated that there can be numerous specific implementations of a RAN device, such as RAN device 602, in which customized call setup based on predicted call quality could be implemented. Further, one of skill in the art would understand how to devise and build such an implementation. As such, RAN device 602 is representative of means for carrying out customized call setup based on predicted call quality, in accordance with the methods and steps described herein by way of example.

4. Conclusion

An example embodiment has been described above. Those skilled in the art will understand, however, that changes and modifications may be made to this embodiment without departing from the true scope and spirit, which is defined by the claims. 

We claim:
 1. A method implemented by a radio access network (RAN) device of a wireless communication system, the method comprising: receiving a request to set up a call between an originating wireless communication device (WCD) and a terminating WCD, wherein for every given call set up between every given pair of WCDs served by the wireless communication system, a determination that a particular coding technique will be selected for the given call is made after alerting the given pair of the given call; prior to alerting the originating WCD and the terminating WCD of the call, predicting that the particular coding technique will be selected for the call; and alerting at least one of the originating WCD or the terminating WCD of the call with an alerting signal that indicates the particular coding technique will be used for the call, wherein the RAN device is configured for at least one of originating the call from the originating WCD, or terminating the call to the terminating WCD, and wherein predicting that the particular coding technique will be selected for the call comprises: determining that one or more call parameters of the received request matches one or more historical call parameters recorded for a previous call in a historical record of calls that are: (i) originated by the originating WCD, or (ii) calls terminated by the terminating WCD, wherein the particular coding technique was used for the previous call, and wherein, for each call in the historical record of calls, a record of historical call parameters is kept that includes at least one of: originating WCD identity, terminating WCD identity, time of day, originating base station, terminating base station, originating network switch, and terminating network switch.
 2. The method of claim 1, wherein alerting at least one of the originating WCD or the terminating WCD of the call with the alerting signal comprises causing a particular call ringback associated with the particular coding technique to be played at the originating WCD.
 3. The method of claim 1, wherein alerting at least one of the originating WCD or the terminating WCD of the call with the alerting signal comprises causing a particular call ringtone associated with the particular coding technique to be played at the terminating WCD.
 4. The method of claim 1, wherein the particular coding technique is a particular codec that is configured for high fidelity voice communications.
 5. The method of claim 4, further comprising: subsequent to alerting at least one of the originating WCD or the terminating WCD of the call with the alerting signal, selecting the particular codec for the call.
 6. The method of claim 1, wherein the wireless communication system is configured to operate according to at least CDMA2000 1× Advanced, and wherein predicting that the particular coding technique will be selected for the call comprises: predicting that a codec specified according to Enhanced Variable Bitrate Codec (EVRC) EVRC-NW will be selected for the call.
 7. The method of claim 6, wherein alerting at least one of the originating WCD or the terminating WCD of the call with the alerting signal that indicates the particular coding technique will be used for the call comprises causing playout at the originating WCD of a customize ringback indicating that the call will be a high-definition voice call.
 8. The method of claim 6, wherein alerting at least one of the originating WCD or the terminating WCD of the call with the alerting signal that indicates the particular coding technique will be used for the call comprises causing playout at the terminating WCD of a customize ringtone indicating an incoming high-definition voice call.
 9. A radio access network (RAN) device configured for operating in a wireless communication system, the base station comprising: one or more processors; memory accessible by the one or more processors; and machine-readable instructions stored in the memory, that upon execution by the one or more processors cause the RAN device to carry out functions including: receiving a request to set up a call between an originating wireless communication device (WCD) and a terminating WCD, wherein for every given call set up between every given pair of WCDs served by the wireless communication system, a determination that a particular coding technique will be selected for the given call is made after alerting the given pair of the given call, prior to alerting the originating WCD and the terminating WCD of the call, predicting that the particular coding technique will be selected for the call, and alerting at least one of the originating WCD or the terminating WCD of the call with an alerting signal that indicates the particular coding technique will be used for the call, wherein the RAN device is configured for at least one of originating the call from the originating WCD, or terminating the call to the terminating WCD, and wherein predicting that the particular coding technique will be selected for the call comprises: determining that one or more call parameters of the received request matches one or more historical call parameters recorded for a previous call in a historical record of calls that are: (i) originated by the originating WCD, or (ii) calls terminated by the terminating WCD, wherein the particular coding technique was used for the previous call, and wherein, for each call in the historical record of calls, a record of historical call parameters is kept that includes at least one of: originating WCD identity, terminating WCD identity, time of day, originating base station, terminating base station, originating network switch, and terminating network switch.
 10. The RAN device of claim 9, wherein the wireless communication system is configured to operate according to at least CDMA2000 1× Advanced, wherein the RAN device is one of a base transceiver station, a base station controller, or a mobile switching center, and wherein predicting that the particular coding technique will be selected for the call comprises: predicting that a codec specified according to Enhanced Variable Bitrate Codec (EVRC) EVRC-NW will be selected for the call.
 11. The RAN device of claim 10, wherein alerting at least one of the originating WCD or the terminating WCD of the call with the alerting signal that indicates the particular coding technique will be used for the call comprises: causing playout at the originating WCD of a customize ringback indicating that the call will be a high-definition voice call; and causing playout at the terminating WCD of a customize ringtone indicating an incoming high-definition voice call.
 12. A non-transitory computer-readable medium having instructions stored thereon that, upon execution by one or more processors of a radio access network (RAN) device, cause the RAN device to carry out functions including: receiving a request to set up a call between an originating wireless communication device (WCD) and a terminating WCD, wherein for every given call set up between every given pair of WCDs served by the wireless communication system, a determination that a particular coding technique will be selected for the given call is made after alerting the given pair of the given call; prior to alerting the originating WCD and the terminating WCD of the call, predicting that the particular coding technique will be selected for the call; and alerting at least one of the originating WCD or the terminating WCD of the call with an alerting signal that indicates the particular coding technique will be used for the call, wherein predicting that the particular coding technique will be selected for the call comprises: determining that one or more call parameters of the received request matches one or more historical call parameters recorded for a previous call in a historical record of calls that are: (i) originated by the originating WCD, or (ii) calls terminated by the terminating WCD, wherein the particular coding technique was used for the previous call, and wherein, for each call in the historical record of calls, a record of historical call parameters is kept that includes at least one of: originating WCD identity, terminating WCD identity, time of day, originating base station, terminating base station, originating network switch, and terminating network switch.
 13. The non-transitory computer-readable medium of claim 12, wherein the wireless communication system is configured to operate according to at least CDMA2000 1× Advanced, and wherein predicting that the particular coding technique will be selected for the call comprises: predicting that a codec specified according to Enhanced Variable Bitrate Codec (EVRC) EVRC-NW will be selected for the call.
 14. The non-transitory computer-readable medium of claim 13, wherein alerting at least one of the originating WCD or the terminating WCD of the call with the alerting signal that indicates the particular coding technique will be used for the call comprises: causing playout at the originating WCD of a customize ringback indicating that the call will be a high-definition voice call; and causing playout at the terminating WCD of a customize ringtone indicating an incoming high-definition voice call. 